// var i;
// var s = cc._decorator;
// var c = s.ccclass;
// var l = s.property;
// var u = s.requireComponent;
// var p = s.menu;
// var f = s.executeInEditMode;
// var d = (function () {
//     function e() {
//         this.lang = "zh";
//         this.sprite = null;
//     }
//     __decorate(
//         [
//             l({
//                 type: cc.String,
//                 displayName: "语言包"
//             })
//         ],
//         e.prototype,
//         "lang",
//         void 0
//     );
//     __decorate(
//         [
//             l({
//                 type: cc.SpriteFrame,
//                 displayName: "语言包图片"
//             })
//         ],
//         e.prototype,
//         "sprite",
//         void 0
//     );
//     return __decorate([c("AL_GAME_HUA_LangPack")], e);
// })();
// var h = (function (e) {
//     function t() {
//         var t = (null !== e && e.apply(this, arguments)) || this;
//         t.packs = [];
//         return t;
//     }
//     __extends(t, e);
//     t.prototype.onLoad = function () {
//         this.node.getComponent(cc.Sprite);
//     };
//     t.prototype.start = function () {
//         var e = AL_APP_SDK_MANAGER.languageManager.getLanguage();
//         var t = this.node.getComponent(cc.Sprite);
//         for (var n in this.packs) {
//             var o = this.packs[n];
//             if (o.lang == e) {
//                 t.spriteFrame = o.sprite;
//                 break;
//             }
//         }
//     };
//     __decorate(
//         [
//             l({
//                 type: [d]
//             })
//         ],
//         t.prototype,
//         "packs",
//         void 0
//     );
//     return __decorate([c, u(cc.Sprite), f(), p("AL_GAME_HUA/AL_GAME_HUA_LangSprite")], t);
// })(cc.Component);
// exports.default = h;


// 引入Cocos Creator的装饰器模块
let { ccclass, property, requireComponent, menu, executeInEditMode } = cc._decorator;

/**
 * 语言包类，用于表示每一种语言（可能带有图片）
 */
@ccclass("AL_GAME_HUA_LangPack")
class LangPack {
    @property({
        displayName: "语言包"
    })
    lang = "zh"; // 语言标识符

    @property({
        type: cc.SpriteFrame,
        displayName: "语言包图片"
    })
    sprite = null; // 对应语言的图片资源
}

/**
 * 语言精灵组件类，通过查找语言包并更新精灵组件的spriteFrame
 */
@ccclass
@requireComponent(cc.Sprite)
@executeInEditMode()
@menu("AL_GAME_HUA/AL_GAME_HUA_LangSprite")
class AL_GAME_HUA_LangSprite extends cc.Component {
    @property({
        type: [LangPack]
    })
    packs = []; // 语言包数组

    onLoad() {
        // 确保该节点附加了Sprite组件
        this.node.getComponent(cc.Sprite);
    }

    start() {
       // 获取当前语言
        let currentLanguage = AL_APP_SDK_MANAGER.languageManager.getLanguage();
        // 获取该节点上的Sprite组件
        let sprite = this.node.getComponent(cc.Sprite);

        // 遍历语言包，匹配当前语言并更新spriteFrame
        for (let pack of this.packs) {
            if (pack.lang === currentLanguage) {
                sprite.spriteFrame = pack.sprite;
                break;
            }
        }
    }
}

exports.default = AL_GAME_HUA_LangSprite;